home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / I-Info Magazine / (c)i21.d64 / clock teacher (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  7KB  |  336 lines

  1. 10 POKE53281,0:POKE53280,11
  2. 20 PRINT"[147]"TAB(8)"HICKORY, DICKORY, DOCK!
  3. 30 [153]""[163]14)"PLEASE WAIT
  4. 40 POKE56,48:CLR
  5. 50 POKE650,128:X=RND(-TI)
  6. 60 DIMN(12),LO(12,6),CH(12,6),NU(10,15),T1(12),T2(12)
  7. 70 S=54272:FORI=0TO24:POKES+I,0:NEXT:POKES+24,15
  8. 80 FORI=1TO30:READA$,A,B,C:NEXT
  9. 90 V=53248:POKE2040,13
  10. 100 FORI=0TO63:READA:POKE832+I,A:NEXT
  11. 110 POKEV+39,2:POKEV+37,1:POKEV+38,6
  12. 120 POKEV,150:POKEV+1,150
  13. 130 POKEV+23,1:POKEV+29,1
  14. 140 POKEV+28,1:POKEV+21,1
  15. 150 FORI=49152TO49152+81:READA:POKEI,A:NEXT
  16. 160 SYS49152
  17. 170 FORI=0TO143:READA:POKE12288+101*8+I,A:NEXT
  18. 180 FORI=1TO12:READN(I):NEXT
  19. 190 FORI=1TO12:FORJ=1TON(I):READLO(I,J):NEXT:NEXT
  20. 200 FORI=1TO12:FORJ=1TON(I):READCH(I,J):NEXT:NEXT
  21. 210 FORI=0TO9:FORJ=1TO15:READA$:IFA$="+"THENNU(I,J)=160
  22. 220 IFA$="-"THENNU(I,J)=32
  23. 230 NEXT:NEXT
  24. 240 FORI=1TO12:READT1(I),T2(I):NEXT
  25. 250 RESTORE:POKEV+21,0
  26. 260 PRINT"[147]CHOOSE ONE OF THE FOLLOWING:
  27. 270 [153][163]5)"1. TEST - HOURS
  28. 280 PRINTTAB(5)"2. TEST - HOURS AND HALF HOURS
  29. 290 [153][163]5)"3. TEST - 5 MIN. INTERVALS
  30. 300 PRINTTAB(5)"4. PRACTICE
  31. 310 [153][163]5)"5. END PROGRAM"
  32. 320 [161]KK$:[139]KK$[178]""[167]320
  33. 330 KK[178][197](KK$):[139]KK[179]1[176]KK[177]5[167]320
  34. 340 [139]KK[178]5[167][158]2048:[128]
  35. 350 [151]53272,([194](53272)[175]240)[170]12
  36. 360 RA[178]0:WA[178]0
  37. 370 [153]"LOAD"
  38. 380 [153][163]19)"12"
  39. 390 [153][163]14)"11         1"
  40. 400 [153]:[153][163]11)"10               2"
  41. 410 [153]:[153]:[153][163]11)"9        (null)        3"
  42. 420 [153]:[153]:[153][163]12)"8               4"
  43. 430 [153]:[153][163]15)"7         5"
  44. 440 [153][163]20)"6"
  45. 450 [153]"SYSF5=TANTANTANTAN
  46. 460 PRINT"F7=_[192][192][192][192][192]
  47. 470 [153]"RETURN=ANS.
  48. 480 PRINT"M=MENU
  49. 490 H[178]2:M[178]12:[141]950:[141]1060
  50. 500 [151]1844,160:[151]1844[170]S,2
  51. 510 [151]1924,160:[151]1924[170]S,2
  52. 520 [139]KK[178]4[167]2470
  53. 530 C[178]H:D[178]M:[153]"SET THE HANDS ON THE CLOCK:"
  54. 540 [141]1590:H[178]A:M[178]B:[141]1230:[141]1450:H[178]C:M[178]D
  55. 550 :
  56. 560 [151]198,0
  57. 570 K$[178]"":[161]K$:[139]K$[178]""[167]570
  58. 580 [139]K$[178]"READ"[167][141]1110
  59. 590 [139]K$[178]"LET"[167][141]1160
  60. 600 [139]K$[178][199](13)[167]640
  61. 610 [139]K$[178]"M"[167]260
  62. 620 [137]570
  63. 630 :
  64. 640 [139]H[179][177]A[176]M[179][177]B[167]770
  65. 650 [153]""[163]17)"CONTRIGHT!"
  66. 660 [141]2310
  67. 670 [129]I[178]1[164]10
  68. 680 [153]""[163]17)"RIGHT!"
  69. 690 [129]T[178]1[164]50:[130]
  70. 700 [153]""[163]17)"RIGHT!"
  71. 710 [129]T[178]1[164]50:[130]
  72. 720 [130]
  73. 730 [153]""[163]17)"      "
  74. 740 WA[178]0:RA[178]RA[170]1:[139]RA[178]5[167]RA[178]0:[137]1700
  75. 750 [137]530
  76. 760 :
  77. 770 [153]""[163]17)"CLRWRONG!""
  78. 780 GOSUB2390:WA=WA+1
  79. 790 FORT=1TO1000:NEXT
  80. 800 PRINT""TAB(17)"      "
  81. 810 IFWA<3THEN570
  82. 820 WA=0:PRINT"THE CORRECT TIME IS:       "
  83. 830 GOSUB910:GOSUB1020
  84. 840 H=A:M=B:GOSUB950:GOSUB1060
  85. 850 FORT=1TO2000:NEXT
  86. 860 PRINT"                    "
  87. 870 GOTO530
  88. 880 :
  89. 890 :CHANGE MINUTE HAND
  90. 900 :
  91. 910 FORI=1TON(M)
  92. 920 POKELO(M,I),32
  93. 930 NEXT:RETURN
  94. 940 :
  95. 950 FORI=1TON(M)
  96. 960 POKELO(M,I),CH(M,I)
  97. 970 POKELO(M,I)+S,5
  98. 980 NEXT:GOSUB2250:RETURN
  99. 990 :
  100. 1000 :CHANGE HOUR HAND
  101. 1010 :
  102. 1020 FORI=1TON(H)-1
  103. 1030 POKELO(H,I),32
  104. 1040 NEXT:RETURN
  105. 1050 :
  106. 1060 FORI=1TON(H)-1
  107. 1070 POKELO(H,I),CH(H,I)
  108. 1080 POKELO(H,I)+S,7
  109. 1090 NEXT:GOSUB2250:RETURN
  110. 1100 :
  111. 1110 GOSUB910:GOSUB1020
  112. 1120 H=H+1:IFH=13THENH=1
  113. 1130 GOSUB1060:GOSUB950
  114. 1140 RETURN
  115. 1150 :
  116. 1160 GOSUB910:GOSUB1020
  117. 1170 M=M+1:IFM=13THENM=1
  118. 1180 GOSUB1060:GOSUB950
  119. 1190 RETURN
  120. 1200 :
  121. 1210 :CHANGE HOUR NUMBER
  122. 1220 :
  123. 1230 IFH<10THEN1300
  124. 1240 K=0
  125. 1250 FORI=1796TO1956STEP40
  126. 1260 FORJ=0TO2:K=K+1
  127. 1270 POKEI+J,NU(1,K):POKEI+J+S,2
  128. 1280 NEXT:NEXT
  129. 1290 TP=H-10:GOTO1310
  130. 1300 TP=H
  131. 1310 K=0
  132. 1320 FORI=1800TO1960STEP40
  133. 1330 FORJ=0TO2:K=K+1
  134. 1340 POKEI+J,NU(TP,K):POKEI+J+S,2
  135. 1350 NEXT:NEXT
  136. 1360 IFH>9THENRETURN
  137. 1370 FORI=1796TO1956STEP40
  138. 1380 FORJ=0TO2:K=K+1
  139. 1390 POKEI+J,32:POKEI+J+S,2
  140. 1400 NEXT:NEXT
  141. 1410 RETURN
  142. 1420 :
  143. 1430 : CHANGE MINUTE NUMBER
  144. 1440 :
  145. 1450 T1=T1(M):T2=T2(M)
  146. 1460 K=0
  147. 1470 FORI=1806TO1966STEP40
  148. 1480 FORJ=0TO2:K=K+1
  149. 1490 POKEI+J,NU(T1,K):POKEI+J+S,2
  150. 1500 NEXT:NEXT
  151. 1510 K=0
  152. 1520 FORI=1810TO1970STEP40
  153. 1530 FORJ=0TO2:K=K+1
  154. 1540 POKEI+J,NU(T2,K):POKEI+J+S,2
  155. 1550 NEXT:NEXT
  156. 1560 RETURN
  157. 1570 :
  158. 1580 :GET RANDOM TIME
  159. 1590 :
  160. 1600 G=INT(RND(1)*12)+1:IFG=ATHEN1600
  161. 1610 A=G
  162. 1620 J=INT(RND(1)*12)+1
  163. 1630 IFKK=1THENB=12:RETURN
  164. 1640 IFKK=2ANDJ<6THENB=12:RETURN
  165. 1650 IFKK=2THENB=6:RETURN
  166. 1660 B=J:RETURN
  167. 1670 :
  168. 1680 :HICKORY
  169. 1690 :
  170. 1700 POKE53281,0:POKE53280,11:PRINT"[147]"
  171. 1710 FORI=0TO24:POKEI+S,0:NEXT
  172. 1720 POKES+24,15:POKES+6,240
  173. 1730 POKEV,250:POKEV+1,184
  174. 1740 POKEV+21,1
  175. 1750 PRINT""TAB(30)"[149]       "
  176. 1760 PRINTTAB(30)" [155]  [194]  [149] "
  177. 1770 PRINTTAB(30)" [155]  [221]  [149] "
  178. 1780 PRINTTAB(30)" [155]  [209][192][195][149] "
  179. 1790 PRINTTAB(30)" [155]     [149] "
  180. 1800 PRINTTAB(30)"[149]       "
  181. 1810 FORI=1TO9
  182. 1820 PRINTTAB(30)" [146][158][221]  [149] "
  183. 1830 NEXT
  184. 1840 PRINTTAB(30)" [146][158][209][149] "
  185. 1850 PRINTTAB(30)"  "
  186. 1860 PRINTTAB(30)"       "
  187. 1870 PRINT""
  188. 1880 Z=7:GOSUB1970:PRINT
  189. 1890 Z=8:GOSUB1970:PRINT
  190. 1900 FORI=186TO50STEP-2:POKEV+1,I:NEXT
  191. 1910 Z=4:GOSUB1970:PRINT
  192. 1920 POKE1338,160:POKE1257,194:POKE1298,206:POKE1338+S,15:POKE1298+S,15
  193. 1930 POKE1339,160:Z=4:GOSUB1970:PRINT
  194. 1940 FORI=50TO186STEP2:POKEV+1,I:NEXT
  195. 1950 Z=7:GOSUB1970:GOTO250
  196. 1960 :
  197. 1970 FORI=1TOZ
  198. 1980 READA$,A,B,C:POKES+4,17
  199. 1990 PRINTA$;:POKES+1,A:POKES,B
  200. 2000 FORT=1TOC:NEXT:POKES+4,16
  201. 2010 NEXT:RETURN
  202. 2020 :
  203. 2030 :
  204. 2040 DATA "HICK",12,32,125,"O",12,216,125,"RY, ",14,107,125,"DICK",14,107,125
  205. 2050 DATA "O",16,47,125,"RY, ",18,42,125,"DOCK!",19,63,1000
  206. 2060 DATA "THE ",12,32,125,"MOUSE",12,32,125," ",12,216,125,"RAN ",14,107,125
  207. 2070 DATA "UP",14,107,125," ",16,47,125,"THE ",18,42,125,"CLOCK.",19,63,1000
  208. 2080 DATA "THE ",14,107,125,"CLOCK ",19,63,250,"STRUCK ",19,63,125
  209. 2090 DATA "ONE,",18,42,250,"THE ",18,42,125,"MOUSE ",16,47,250
  210. 2100 DATA "RAN ",16,47,125,"DOWN.",14,107,1000
  211. 2110 DATA "HICK",14,107,125,"OR",16,47,124,"Y, ",14,107,125,"DICK",12,216,125
  212. 2120 DATA "O",12,32,125,"RY, ",10,205,125,"DOCK!",9,159,1000
  213. 2130 :
  214. 2140 DATA 5,64,84,5,64,84,5,85
  215. 2150 DATA 84,0,85,80,0,68,64,0
  216. 2160 DATA 85,64,16,81,65,16,21,1
  217. 2170 DATA 16,4,1,31,255,253,15,255
  218. 2180 DATA 252,0,255,192,0,255,192,0
  219. 2190 DATA 255,192,65,170,128,68,162,128
  220. 2200 DATA 80,162,128,0,162,128,0,17
  221. 2210 DATA 0,0,17,0,1,81,80,255
  222. 2220 :
  223. 2230 :MUSIC SUBS
  224. 2240 :
  225. 2250 POKES+5,0:POKES+6,2
  226. 2260 POKES+4,129
  227. 2270 POKES,100:POKES+1,100
  228. 2280 FORT=1TO10:NEXT
  229. 2290 POKES+4,128:RETURN
  230. 2300 :
  231. 2310 POKES+5,0:POKES+6,240
  232. 2320 FORI=1TO10
  233. 2330 POKES+4,17
  234. 2340 POKES,100:POKES+1,20
  235. 2350 FORT=1TO50:NEXT
  236. 2360 POKES+4,16
  237. 2370 NEXT:RETURN
  238. 2380 :
  239. 2390 POKES+6,240:POKES+5,0
  240. 2400 POKES+4,17
  241. 2410 POKES,108:POKES+1,6
  242. 2420 FORT=1TO300:NEXT
  243. 2430 POKES+4,16:RETURN
  244. 2440 :
  245. 2450 :LEARNING MODULE
  246. 2460 :
  247. 2470 PRINT"[145][145]           "
  248. 2480 GOSUB1230:GOSUB1450
  249. 2490 K$="":GETK$:IFK$=""THEN2490
  250. 2500 IFK$="[135]"THENGOSUB1110:GOSUB1230
  251. 2510 IFK$="[136]"THENGOSUB1160:GOSUB1450
  252. 2520 IFK$="M"THEN260
  253. 2530 GOTO 2490
  254. 2540 :
  255. 2550 :ML DATA
  256. 2560 :
  257. 2570 DATA 173,14,220,41,254,141,14,220
  258. 2580 DATA 165,1,41,251,133,1,160,0
  259. 2590 DATA 185,0,208,153,0,48,185,0
  260. 2600 DATA 209,153,0,49,185,0,210,153
  261. 2610 DATA 0,50,185,0,211,153,0,51
  262. 2620 DATA 185,0,212,153,0,52,185,0
  263. 2630 DATA 213,153,0,53,185,0,214,153
  264. 2640 DATA 0,54,185,0,215,153,0,55
  265. 2650 DATA 200,208,205,165,1,9,4,133
  266. 2660 DATA 1,173,14,220,9,1,141,14
  267. 2670 DATA 220,96
  268. 2680 :
  269. 2690 :
  270. 2700 :(null) DATA
  271. 2710 :
  272. 2720 DATA 1,2,4,8,16,32,64,128
  273. 2730 DATA 128,64,32,16,8,4,2,1
  274. 2740 DATA 0,0,0,0,0,3,28,224
  275. 2750 DATA 0,0,1,14,112,128,0,0
  276. 2760 DATA 7,56,192,0,0,0,0,0
  277. 2770 DATA 192,56,7,0,0,0,0,0
  278. 2780 DATA 0,0,128,112,14,1,0,0
  279. 2790 DATA 0,0,0,0,0,224,28,3
  280. 2800 DATA 8,12,14,255,255,14,12,8
  281. 2810 DATA 24,24,24,24,24,126,60,24
  282. 2820 DATA 31,15,15,31,57,112,224,192
  283. 2830 DATA 192,224,112,57,31,15,15,31
  284. 2840 DATA 3,7,14,156,248,240,240,248
  285. 2850 DATA 248,240,240,248,156,14,7,3
  286. 2860 DATA 0,0,254,62,126,134,2,0
  287. 2870 DATA 0,0,127,124,126,97,64,0
  288. 2880 DATA 0,0,0,2,134,126,62,254
  289. 2890 DATA 0,0,0,64,97,126,124,127
  290. 2900 :
  291. 2910 :HOUR HAND DATA
  292. 2920 :
  293. 2930 DATA 3,5,6,5,3,4,3,5,6,5,3,4
  294. 2940 DATA 1405,1366,1327
  295. 2950 DATA 1405,1406,1407,1368,1369
  296. 2960 DATA 1445,1446,1447,1448,1449,1450
  297. 2970 DATA 1485,1486,1487,1528,1529
  298. 2980 DATA 1485,1526,1567
  299. 2990 DATA 1484,1524,1564,1604
  300. 3000 DATA 1483,1522,1561
  301. 3010 DATA 1483,1482,1481,1520,1519
  302. 3020 DATA 1443,1442,1441,1440,1439,1438
  303. 3030 DATA 1403,1402,1401,1360,1359
  304. 3040 DATA 1403,1362,1321
  305. 3050 DATA 1404,1364,1324,1284
  306. 3060 DATA 78,78,111
  307. 3070 DATA 103,104,105,103,115
  308. 3080 DATA 67,67,67,67,67,109
  309. 3090 DATA 106,107,108,106,117
  310. 3100 DATA 77,77,112
  311. 3110 DATA 93,93,93,110
  312. 3120 DATA 78,78,113
  313. 3130 DATA 105,104,103,105,118
  314. 3140 DATA 67,67,67,67,67,31
  315. 3150 DATA 108,107,106,108,116
  316. 3160 DATA 77,77,114
  317. 3170 DATA 93,93,93,30
  318. 3180 :
  319. 3190 :NUMBER DATA
  320. 3200 :
  321. 3210 DATA +,+,+,+,-,+,+,-,+,+,-,+,+,+,+
  322. 3220 DATA -,+,-,-,+,-,-,+,-,-,+,-,-,+,-
  323. 3230 DATA +,+,+,-,-,+,+,+,+,+,-,-,+,+,+
  324. 3240 DATA +,+,+,-,-,+,-,+,+,-,-,+,+,+,+
  325. 3250 DATA +,-,+,+,-,+,+,+,+,-,-,+,-,-,+
  326. 3260 DATA +,+,+,+,-,-,+,+,+,-,-,+,+,+,+
  327. 3270 DATA +,+,+,+,-,-,+,+,+,+,-,+,+,+,+
  328. 3280 DATA +,+,+,-,-,+,-,-,+,-,-,+,-,-,+
  329. 3290 DATA +,+,+,+,-,+,+,+,+,+,-,+,+,+,+
  330. 3300 DATA +,+,+,+,-,+,+,+,+,-,-,+,-,-,+
  331. 3310 :
  332. 3320 :MORE DATA
  333. 3330 :
  334. 3340 DATA  0,5,1,0,1,5,2,0,2,5,3,0
  335. 3350 DATA 3,5,4,0,4,5,5,0,5,5,0,0
  336.